package com.yunyao.framework.service;

import com.yunyao.common.dto.supplier.ContractDto;
import com.yunyao.common.web.util.PageResult;
import com.yunyao.common.web.util.YResult;
import com.yunyao.framework.dto.projectorder.ProjectMaterialSaveDto;
import com.yunyao.framework.vo.contract.ContractMaterialVO;
import com.yunyao.framework.vo.projectorder.ProjectMaterialVO;

/**
 * 项目订单 材料信息
 * @author chenyejian
 * @date 2024-07-16
 */
public interface ProjectMaterialService {
    /**
     * 根据条件分页查询项目订单材料表
     * @param   orderId
     * @return
     */
    YResult<PageResult<ProjectMaterialVO>> pageList(String orderId,Long pageIndx,Long pageSize);

    /**
     * 获取合同材料列表
     * @param contractDto
     * @return
     */
    YResult<PageResult<ContractMaterialVO>> getContractMaterialList(ContractDto contractDto);

    /**
     * 保存项目订单材料表
     * @param   saveDto
     * @return
     */
    YResult<String> saveOrUpdate(ProjectMaterialSaveDto saveDto);

    /**
     * 删除项目订单材料表
     * @param   ids
     * @return
     */
    YResult<String> deleteByIds(String[] ids);


    /**
     * 项目订单材料表总和
     * @param   orderId
     * @return
     */
    YResult<ProjectMaterialVO> materialListCount(String orderId);
}
